<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GtkScale</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="index.html" title="GTK+ 2 Reference Manual">
<link rel="up" href="AbstractObjects.html" title="Abstract Base Classes">
<link rel="prev" href="GtkRange.html" title="GtkRange">
<link rel="next" href="GtkScrollbar.html" title="GtkScrollbar">
<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="GtkRange.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="AbstractObjects.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GTK+ 2 Reference Manual</th>
<td><a accesskey="n" href="GtkScrollbar.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#GtkScale.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#GtkScale.description" class="shortcut">Description</a>
                   | 
                  <a href="#GtkScale.object-hierarchy" class="shortcut">Object Hierarchy</a>
                   | 
                  <a href="#GtkScale.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
                   | 
                  <a href="#GtkScale.properties" class="shortcut">Properties</a>
                   | 
                  <a href="#GtkScale.style-properties" class="shortcut">Style Properties</a>
                   | 
                  <a href="#GtkScale.signals" class="shortcut">Signals</a>
</td></tr>
</table>
<div class="refentry">
<a name="GtkScale"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="GtkScale.top_of_page"></a>GtkScale</span></h2>
<p>GtkScale — Base class for GtkHScale and GtkVScale</p>
</td>
<td valign="top" align="right"><img src="scales.png"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="GtkScale.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">
#include &lt;gtk/gtk.h&gt;

struct              <a class="link" href="GtkScale.html#GtkScale-struct" title="struct GtkScale">GtkScale</a>;
<span class="returnvalue">void</span>                <a class="link" href="GtkScale.html#gtk-scale-set-digits" title="gtk_scale_set_digits ()">gtk_scale_set_digits</a>                (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> digits</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkScale.html#gtk-scale-set-draw-value" title="gtk_scale_set_draw_value ()">gtk_scale_set_draw_value</a>            (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> draw_value</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkScale.html#gtk-scale-set-value-pos" title="gtk_scale_set_value_pos ()">gtk_scale_set_value_pos</a>             (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>,
                                                         <em class="parameter"><code><a class="link" href="gtk-Standard-Enumerations.html#GtkPositionType" title="enum GtkPositionType"><span class="type">GtkPositionType</span></a> pos</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>                <a class="link" href="GtkScale.html#gtk-scale-get-digits" title="gtk_scale_get_digits ()">gtk_scale_get_digits</a>                (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GtkScale.html#gtk-scale-get-draw-value" title="gtk_scale_get_draw_value ()">gtk_scale_get_draw_value</a>            (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>);
<a class="link" href="gtk-Standard-Enumerations.html#GtkPositionType" title="enum GtkPositionType"><span class="returnvalue">GtkPositionType</span></a>     <a class="link" href="GtkScale.html#gtk-scale-get-value-pos" title="gtk_scale_get_value_pos ()">gtk_scale_get_value_pos</a>             (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>);
<a href="/usr/share/gtk-doc/html/pango/pango-Layout-Objects.html#PangoLayout"><span class="returnvalue">PangoLayout</span></a> *       <a class="link" href="GtkScale.html#gtk-scale-get-layout" title="gtk_scale_get_layout ()">gtk_scale_get_layout</a>                (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkScale.html#gtk-scale-get-layout-offsets" title="gtk_scale_get_layout_offsets ()">gtk_scale_get_layout_offsets</a>        (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *x</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *y</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkScale.html#gtk-scale-add-mark" title="gtk_scale_add_mark ()">gtk_scale_add_mark</a>                  (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="gtk-Standard-Enumerations.html#GtkPositionType" title="enum GtkPositionType"><span class="type">GtkPositionType</span></a> position</code></em>,
                                                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *markup</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkScale.html#gtk-scale-clear-marks" title="gtk_scale_clear_marks ()">gtk_scale_clear_marks</a>               (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="GtkScale.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">
  <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
   +----<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         +----<a class="link" href="GtkObject.html" title="GtkObject">GtkObject</a>
               +----<a class="link" href="GtkWidget.html" title="GtkWidget">GtkWidget</a>
                     +----<a class="link" href="GtkRange.html" title="GtkRange">GtkRange</a>
                           +----GtkScale
                                 +----<a class="link" href="GtkHScale.html" title="GtkHScale">GtkHScale</a>
                                 +----<a class="link" href="GtkVScale.html" title="GtkVScale">GtkVScale</a>
</pre>
</div>
<div class="refsect1">
<a name="GtkScale.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
<p>
GtkScale implements
 AtkImplementorIface,  <a class="link" href="GtkBuildable.html" title="GtkBuildable">GtkBuildable</a> and  <a class="link" href="gtk-Orientable.html#GtkOrientable">GtkOrientable</a>.</p>
</div>
<div class="refsect1">
<a name="GtkScale.properties"></a><h2>Properties</h2>
<pre class="synopsis">
  "<a class="link" href="GtkScale.html#GtkScale--digits" title='The "digits" property'>digits</a>"                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write
  "<a class="link" href="GtkScale.html#GtkScale--draw-value" title='The "draw-value" property'>draw-value</a>"               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
  "<a class="link" href="GtkScale.html#GtkScale--value-pos" title='The "value-pos" property'>value-pos</a>"                <a class="link" href="gtk-Standard-Enumerations.html#GtkPositionType" title="enum GtkPositionType"><span class="type">GtkPositionType</span></a>       : Read / Write
</pre>
</div>
<div class="refsect1">
<a name="GtkScale.style-properties"></a><h2>Style Properties</h2>
<pre class="synopsis">
  "<a class="link" href="GtkScale.html#GtkScale--s-slider-length" title='The "slider-length" style property'>slider-length</a>"            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read
  "<a class="link" href="GtkScale.html#GtkScale--s-value-spacing" title='The "value-spacing" style property'>value-spacing</a>"            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read
</pre>
</div>
<div class="refsect1">
<a name="GtkScale.signals"></a><h2>Signals</h2>
<pre class="synopsis">
  "<a class="link" href="GtkScale.html#GtkScale-format-value" title='The "format-value" signal'>format-value</a>"                                   : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a>
</pre>
</div>
<div class="refsect1">
<a name="GtkScale.description"></a><h2>Description</h2>
<p>
A <a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> is a slider control used to select a numeric value.
To use it, you'll probably want to investigate the methods on
its base class, <a class="link" href="GtkRange.html" title="GtkRange"><span class="type">GtkRange</span></a>, in addition to the methods for <a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> itself.
To set the value of a scale, you would normally use <a class="link" href="GtkRange.html#gtk-range-set-value" title="gtk_range_set_value ()"><code class="function">gtk_range_set_value()</code></a>.
To detect changes to the value, you would normally use the "value_changed"
signal.
</p>
<p>
The <a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> widget is an abstract class, used only for deriving the
subclasses <a class="link" href="GtkHScale.html" title="GtkHScale"><span class="type">GtkHScale</span></a> and <a class="link" href="GtkVScale.html" title="GtkVScale"><span class="type">GtkVScale</span></a>. To create a scale widget,
call <a class="link" href="GtkHScale.html#gtk-hscale-new-with-range" title="gtk_hscale_new_with_range ()"><code class="function">gtk_hscale_new_with_range()</code></a> or <a class="link" href="GtkVScale.html#gtk-vscale-new-with-range" title="gtk_vscale_new_with_range ()"><code class="function">gtk_vscale_new_with_range()</code></a>.
</p>
<div class="refsect2">
<a name="GtkScale-BUILDER-UI"></a><h3>GtkScale as GtkBuildable</h3>
<p>
GtkScale supports a custom &lt;marks&gt; element, which
can contain multiple &lt;mark&gt; elements. The "value" and "position"
attributes have the same meaning as <a class="link" href="GtkScale.html#gtk-scale-add-mark" title="gtk_scale_add_mark ()"><code class="function">gtk_scale_add_mark()</code></a> parameters of the
same name. If the element is not empty, its content is taken as the markup
to show at the mark. It can be translated with the usual "translatable and
"context" attributes.
</p>
</div>
</div>
<div class="refsect1">
<a name="GtkScale.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="GtkScale-struct"></a><h3>struct GtkScale</h3>
<pre class="programlisting">struct GtkScale;</pre>
<p>
The fields of the <a class="link" href="GtkScale.html#GtkScale-struct" title="struct GtkScale"><span class="type">GtkScale</span></a> struct should only be accessed via
the accessor functions.
</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-scale-set-digits"></a><h3>gtk_scale_set_digits ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_scale_set_digits                (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> digits</code></em>);</pre>
<p>
Sets the number of decimal places that are displayed in the value.
Also causes the value of the adjustment to be rounded off to this
number of digits, so the retrieved value matches the value the user saw.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
<td>a <a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>digits</code></em> :</span></p></td>
<td>the number of decimal places to display,
e.g. use 1 to display 1.0, 2 to display 1.00, etc</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-scale-set-draw-value"></a><h3>gtk_scale_set_draw_value ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_scale_set_draw_value            (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> draw_value</code></em>);</pre>
<p>
Specifies whether the current value is displayed as a string next 
to the slider.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
<td>a <a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>draw_value</code></em> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> to draw the value</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-scale-set-value-pos"></a><h3>gtk_scale_set_value_pos ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_scale_set_value_pos             (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>,
                                                         <em class="parameter"><code><a class="link" href="gtk-Standard-Enumerations.html#GtkPositionType" title="enum GtkPositionType"><span class="type">GtkPositionType</span></a> pos</code></em>);</pre>
<p>
Sets the position in which the current value is displayed.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
<td>a <a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
<td>the position in which the current value is displayed</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-scale-get-digits"></a><h3>gtk_scale_get_digits ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>                gtk_scale_get_digits                (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>);</pre>
<p>
Gets the number of decimal places that are displayed in the value.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
<td>a <a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the number of decimal places that are displayed</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-scale-get-draw-value"></a><h3>gtk_scale_get_draw_value ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_scale_get_draw_value            (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>);</pre>
<p>
Returns whether the current value is displayed as a string 
next to the slider.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
<td>a <a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>whether the current value is displayed as a string</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-scale-get-value-pos"></a><h3>gtk_scale_get_value_pos ()</h3>
<pre class="programlisting"><a class="link" href="gtk-Standard-Enumerations.html#GtkPositionType" title="enum GtkPositionType"><span class="returnvalue">GtkPositionType</span></a>     gtk_scale_get_value_pos             (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>);</pre>
<p>
Gets the position in which the current value is displayed.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
<td>a <a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the position in which the current value is displayed</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-scale-get-layout"></a><h3>gtk_scale_get_layout ()</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/pango/pango-Layout-Objects.html#PangoLayout"><span class="returnvalue">PangoLayout</span></a> *       gtk_scale_get_layout                (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>);</pre>
<p>
Gets the <a href="/usr/share/gtk-doc/html/pango/pango-Layout-Objects.html#PangoLayout"><span class="type">PangoLayout</span></a> used to display the scale. The returned
object is owned by the scale so does not need to be freed by
the caller.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
<td>A <a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the <a href="/usr/share/gtk-doc/html/pango/pango-Layout-Objects.html#PangoLayout"><span class="type">PangoLayout</span></a> for this scale,
or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the <a class="link" href="GtkScale.html#GtkScale--draw-value" title='The "draw-value" property'><span class="type">"draw-value"</span></a> property is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.4</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-scale-get-layout-offsets"></a><h3>gtk_scale_get_layout_offsets ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_scale_get_layout_offsets        (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *x</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *y</code></em>);</pre>
<p>
Obtains the coordinates where the scale will draw the 
<a href="/usr/share/gtk-doc/html/pango/pango-Layout-Objects.html#PangoLayout"><span class="type">PangoLayout</span></a> representing the text in the scale. Remember
when using the <a href="/usr/share/gtk-doc/html/pango/pango-Layout-Objects.html#PangoLayout"><span class="type">PangoLayout</span></a> function you need to convert to
and from pixels using <a href="/usr/share/gtk-doc/html/pango/pango-Glyph-Storage.html#PANGO-PIXELS:CAPS"><code class="function">PANGO_PIXELS()</code></a> or <a href="/usr/share/gtk-doc/html/pango/pango-Glyph-Storage.html#PANGO-SCALE:CAPS"><span class="type">PANGO_SCALE</span></a>. 
</p>
<p>
If the <a class="link" href="GtkScale.html#GtkScale--draw-value" title='The "draw-value" property'><span class="type">"draw-value"</span></a> property is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, the return 
values are undefined.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
<td>a <a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>x</code></em> :</span></p></td>
<td>location to store X offset of layout, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>y</code></em> :</span></p></td>
<td>location to store Y offset of layout, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.4</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-scale-add-mark"></a><h3>gtk_scale_add_mark ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_scale_add_mark                  (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="gtk-Standard-Enumerations.html#GtkPositionType" title="enum GtkPositionType"><span class="type">GtkPositionType</span></a> position</code></em>,
                                                         <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *markup</code></em>);</pre>
<p>
Adds a mark at <em class="parameter"><code>value</code></em>. 
</p>
<p>
A mark is indicated visually by drawing a tick mark next to the scale, 
and GTK+ makes it easy for the user to position the scale exactly at the 
marks value.
</p>
<p>
If <em class="parameter"><code>markup</code></em> is not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, text is shown next to the tick mark. 
</p>
<p>
To remove marks from a scale, use <a class="link" href="GtkScale.html#gtk-scale-clear-marks" title="gtk_scale_clear_marks ()"><code class="function">gtk_scale_clear_marks()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
<td>a <a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
<td>the value at which the mark is placed, must be between
the lower and upper limits of the scales' adjustment</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>position</code></em> :</span></p></td>
<td>where to draw the mark. For a horizontal scale, <a class="link" href="gtk-Standard-Enumerations.html#GTK-POS-TOP:CAPS"><span class="type">GTK_POS_TOP</span></a>
is drawn above the scale, anything else below. For a vertical scale,
<a class="link" href="gtk-Standard-Enumerations.html#GTK-POS-LEFT:CAPS"><span class="type">GTK_POS_LEFT</span></a> is drawn to the left of the scale, anything else to the
right.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>markup</code></em> :</span></p></td>
<td>Text to be shown at the mark, using <a href="/usr/share/gtk-doc/html/pango/PangoMarkupFormat.html">Pango markup</a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.16</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-scale-clear-marks"></a><h3>gtk_scale_clear_marks ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_scale_clear_marks               (<em class="parameter"><code><a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale</code></em>);</pre>
<p>
Removes any marks that have been added with <a class="link" href="GtkScale.html#gtk-scale-add-mark" title="gtk_scale_add_mark ()"><code class="function">gtk_scale_add_mark()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
<td>a <a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a>
</td>
</tr></tbody>
</table></div>
<p class="since">Since 2.16</p>
</div>
</div>
<div class="refsect1">
<a name="GtkScale.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GtkScale--digits"></a><h3>The <code class="literal">"digits"</code> property</h3>
<pre class="programlisting">  "digits"                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write</pre>
<p>The number of decimal places that are displayed in the value.</p>
<p>Allowed values: [G_MAXULONG,64]</p>
<p>Default value: 1</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkScale--draw-value"></a><h3>The <code class="literal">"draw-value"</code> property</h3>
<pre class="programlisting">  "draw-value"               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
<p>Whether the current value is displayed as a string next to the slider.</p>
<p>Default value: TRUE</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkScale--value-pos"></a><h3>The <code class="literal">"value-pos"</code> property</h3>
<pre class="programlisting">  "value-pos"                <a class="link" href="gtk-Standard-Enumerations.html#GtkPositionType" title="enum GtkPositionType"><span class="type">GtkPositionType</span></a>       : Read / Write</pre>
<p>The position in which the current value is displayed.</p>
<p>Default value: GTK_POS_TOP</p>
</div>
</div>
<div class="refsect1">
<a name="GtkScale.style-property-details"></a><h2>Style Property Details</h2>
<div class="refsect2">
<a name="GtkScale--s-slider-length"></a><h3>The <code class="literal">"slider-length"</code> style property</h3>
<pre class="programlisting">  "slider-length"            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read</pre>
<p>Length of scale's slider.</p>
<p>Allowed values: &gt;= 0</p>
<p>Default value: 31</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkScale--s-value-spacing"></a><h3>The <code class="literal">"value-spacing"</code> style property</h3>
<pre class="programlisting">  "value-spacing"            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read</pre>
<p>Space between value text and the slider/trough area.</p>
<p>Allowed values: &gt;= 0</p>
<p>Default value: 2</p>
</div>
</div>
<div class="refsect1">
<a name="GtkScale.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="GtkScale-format-value"></a><h3>The <code class="literal">"format-value"</code> signal</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a>*              user_function                      (<a class="link" href="GtkScale.html" title="GtkScale"><span class="type">GtkScale</span></a> *scale,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>   value,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>  user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a></pre>
<p>
Signal which allows you to change how the scale value is displayed.
Connect a signal handler which returns an allocated string representing
<em class="parameter"><code>value</code></em>. That string will then be used to display the scale's value.
</p>
<p>
Here's an example signal handler which displays a value 1.0 as
with "--&gt;1.0&lt;--".
</p>
<div class="informalexample">
  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
    <tbody>
      <tr>
        <td class="listing_lines" align="right"><pre>1
2
3
4
5
6
7</pre></td>
        <td class="listing_code"><pre class="programlisting"><span class="keyword">static</span><span class="normal"> <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar">gchar</a></span><span class="symbol">*</span>
<span class="function">format_value_callback</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">GtkScale</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">scale</span><span class="symbol">,</span>
<span class="normal">                       </span><span class="usertype">gdouble</span><span class="normal">   value</span><span class="symbol">)</span>
<span class="cbracket">{</span>
<span class="normal">  </span><span class="keyword">return</span><span class="normal"> </span><span class="function"><a href="http://library.gnome.org/devel/glib/unstable/glib-String-Utility-Functions.html#g-strdup-printf">g_strdup_printf</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"--&gt;%0.*g&lt;--"</span><span class="symbol">,</span>
<span class="normal">                          </span><span class="function"><a href="GtkScale.html#gtk-scale-get-digits">gtk_scale_get_digits</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">scale</span><span class="symbol">),</span><span class="normal"> value</span><span class="symbol">);</span>
<span class="normal"> </span><span class="cbracket">}</span></pre></td>
      </tr>
    </tbody>
  </table>
</div>

<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
<td>the object which received the signal</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
<td>the value to format</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>user data set when the signal handler was connected.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>allocated string representing <em class="parameter"><code>value</code></em>
</td>
</tr>
</tbody>
</table></div>
</div>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.18</div>
</body>
</html>